package com.bjpowernode.test.service;

import com.bjpowernode.test.dao.EmpDao;
import com.bjpowernode.test.dao.EmpDaoImpl;
import com.bjpowernode.test.entity.Emp;
import com.bjpowernode.test.utils.JDBCUtils;

import java.sql.Connection;
import java.util.List;

public class EmpServiceImpl implements EmpService {

    private EmpDao empDao = new EmpDaoImpl();

    //删除学生
    @Override
    public void deleteEmpById(int eid) {
        Connection conn = null; //获取数据库链接
        try {
            conn = JDBCUtils.getConnection(); //创建连接

            empDao.deleteEmpById(conn,eid);

        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            JDBCUtils.close(conn,null,null); //在TranDao中已经吧sta关过了 所以只关连接就好
        }
    }

    //查询所有员工信息
    @Override
    public List<Emp> findEmps() {

        Connection conn = null ;
        List<Emp> list = null;

        try{
            //创建数据库连接
            conn = JDBCUtils.getConnection();
            //查询所有员工信息
            list = empDao.findEmps(conn);

        }catch (Exception e){
            e.printStackTrace();
        }finally {
            JDBCUtils.close(conn,null,null);
        }
        return list;
    }

    //添加员工
    @Override
    public void saveEmp(Emp emp) {
        Connection conn = null ;

        try{
            //创建数据库连接
            conn = JDBCUtils.getConnection();
            //查询所有员工信息
            empDao.addEmp(conn,emp);

        }catch (Exception e){
            e.printStackTrace();
        }finally {
            JDBCUtils.close(conn,null,null);
        }
    }

    @Override
    public Emp findEmpById(int eid) {
        Connection conn = null ;
        Emp emp = new Emp();

        try{
            //创建数据库连接
            conn = JDBCUtils.getConnection();
            //查询所有员工信息
            emp = empDao.findEmpById(conn,eid);

        }catch (Exception e){
            e.printStackTrace();
        }finally {
            JDBCUtils.close(conn,null,null);
        }
        return emp;
    }

    //保存编辑后的员工信息
    @Override
    public void editEmp(Emp emp) {
        Connection conn = null ;
        try{
            //创建数据库连接
            conn = JDBCUtils.getConnection();
            //查询所有员工信息
            empDao.editEmp(conn,emp);

        }catch (Exception e){
            e.printStackTrace();
        }finally {
            JDBCUtils.close(conn,null,null);
        }
    }

}
